<ui:composition xmlns="http://www.w3.org/1999/xhtml"
	xmlns:f="http://java.sun.com/jsf/core"
	xmlns:h="http://java.sun.com/jsf/html"
	xmlns:ui="http://java.sun.com/jsf/facelets"
	xmlns:p="http://primefaces.org/ui"
	xmlns:c="http://java.sun.com/jsp/jstl/core"
	xmlns:fn="http://java.sun.com/jsp/jstl/functions">

	<h:form id="formConsultarObjetivo">
		<h:messages />
		<p:commandButton id="buttonNewObj" icon="ui-icon-add"
			action="#{controladorMarcoLogico.nuevoObjetivo()}"
			oncomplete="PF('dlgobjetivo').show();"
			update="@widgetVar(dlgobjetivo)"
			rendered="#{!controladorPortafolio.habilitarModoVista}" />
		<p:commandButton value="#{msg.cancelar}" icon="ui-icon-cancel"
			action="#{controladorPortafolio.cancelar()}" />
		<p:panelGrid id="panelObjetivo" style="width:100%;">
			<p:row>
				<p:column>
					<h:outputLabel value="Id Objetivo" />
				</p:column>
				<p:column>
					<p:inputText
						value="#{controladorMarcoLogico.objetivoBusqueda.nidObjetivo}" />
				</p:column>
				<p:column>
					<h:outputLabel value="Nombre Objetivo" />
				</p:column>
				<p:column>
					<p:inputTextarea
						value="#{controladorMarcoLogico.objetivoBusqueda.txtObjetivo}"
						size="120" />
					<p:commandButton update="objetivosTabla" id="consultarObj"
						value="Buscar" icon="ui-icon-find"
						actionListener="#{controladorMarcoLogico.buscarObjetivosPorFiltros}" />

					<p:commandButton update="@form" id="limpiar" value="Limpiar"
						icon="ui-icon-clean"
						actionListener="#{controladorMarcoLogico.limpiar}" />
				</p:column>

			</p:row>
			<p:row>
				<p:column>
					<h:outputLabel value="Tipo Objetivo" />
				</p:column>
				<p:column>
					<h:selectOneMenu
						value="#{controladorMarcoLogico.objetivoBusqueda.tipObjetivo}">
						<f:selectItem itemLabel="-- Seleccionar --" itemValue="0" />
						<f:selectItems value="#{controladorMarcoLogico.tiposObjetivo}"
							var="tipoObjetivo" itemLabel="#{tipoObjetivo.txtParametro}"
							itemValue="#{tipoObjetivo.codParametro}"></f:selectItems>
					</h:selectOneMenu>
				</p:column>
			</p:row>
		</p:panelGrid>

		<p:dataTable id="objetivosTabla" var="obj"
			value="#{controladorMarcoLogico.objetivos}" editable="false"
			paginator="true" rows="10"
			paginatorTemplate="{CurrentPageReport}  {FirstPageLink} {PreviousPageLink} {PageLinks} {NextPageLink} {LastPageLink} {RowsPerPageDropdown}"
			rowsPerPageTemplate="5,10,15" resizableColumns="false"
			rowKey="#{obj.nidObjetivo}"
			emptyMessage="No existe Objetivos"
			selection="#{controladorMarcoLogico.seleccionarObjetivo}" selectionMode="single">
			<p:ajax event="rowSelect" listener="#{controladorMarcoLogico.buscarIndicadores}" update=":portafolio:panelMarcoLogico:formConsultarIndicador"/>	
			<p:column>
				<f:facet name="header">
					<h:outputText value="Opciones" />
				</f:facet>

				<p:commandButton
					action="#{controladorMarcoLogico.buscarParaMostrar(obj.nidObjetivo)}"
					id="verobjetivo" icon="ui-icon-find" title="Ver"
					oncomplete="PF('dlgobjetivo').show();"
					update="@widgetVar(dlgobjetivo)"
					rendered="#{controladorPortafolio.habilitarModoVista}" />



				<p:commandButton
					action="#{controladorMarcoLogico.buscarParaMostrar(obj.nidObjetivo)}"
					id="editarobjetivo" icon="ui-icon-update" title="Ver"
					oncomplete="PF('dlgobjetivo').show();"
					update="@widgetVar(dlgobjetivo)"
					rendered="#{!controladorPortafolio.habilitarModoVista}" />


			</p:column>
			<p:column sortBy="nidObjetivo">
				<f:facet name="header">
					<h:outputText value="ID" />
				</f:facet>
				<h:outputText value="#{obj.nidObjetivo}" />
			</p:column>

			<p:column>
				<f:facet name="header">
					<h:outputText value="Tipo" />
				</f:facet>

				<h:selectOneMenu value="#{obj.tipObjetivo}" disabled="true">
					<f:selectItems value="#{controladorMarcoLogico.tiposObjetivo}"
						var="tipoObjetivo" itemLabel="#{tipoObjetivo.txtParametro}"
						itemValue="#{tipoObjetivo.codParametro}"></f:selectItems>
				</h:selectOneMenu>
			</p:column>

			<p:column>
				<f:facet name="header">
					<h:outputText value="Nombre Objetivo" />
				</f:facet>
				<h:outputText value="#{obj.txtObjetivo}" />

			</p:column>
			<p:column>
				<f:facet name="header">
					<h:outputText value="Supuestos" />
				</f:facet>
				<h:outputText value="#{obj.txtSupuesto}" />
			</p:column>
			<p:column>
				<f:facet name="header">
					<h:outputText value="Precedente" />
				</f:facet>

				<h:selectOneMenu value="#{obj.tipObjetivoPrecedente}"
					disabled="true">
					<f:selectItems value="#{controladorMarcoLogico.tiposObjetivo}"
						var="tipoObjetivo" itemLabel="#{tipoObjetivo.txtParametro}"
						itemValue="#{tipoObjetivo.codParametro}"></f:selectItems>
				</h:selectOneMenu>
			</p:column>
			<p:column>
				<f:facet name="header">
					<h:outputText value="Activo" />
				</f:facet>

				<h:selectOneMenu value="#{obj.flgActivo}" disabled="true">
					<f:selectItems value="#{controladorMarcoLogico.estadosObjetivo}"
						var="estadoObjetivo" itemLabel="#{estadoObjetivo.txtParametro}"
						itemValue="#{estadoObjetivo.codParametro}"></f:selectItems>
				</h:selectOneMenu>
			</p:column>
		</p:dataTable>


	</h:form>


	<p:dialog id="dialogo"
		header="Objetivo #{controladorMarcoLogico.objetivo.nidObjetivo}"
		widgetVar="dlgobjetivo" modal="true" height="250" appendTo="@(body)">
		<h:form id="pnlobjetivo">
			<p:panelGrid style="width:100%;">
				<p:row>
					<p:column>
						<h:outputLabel value="Nombre" />
					</p:column>
					<p:column>
						<p:inputText
							value="#{controladorMarcoLogico.objetivo.txtObjetivo}" />
					</p:column>
				</p:row>
				<p:row>
					<p:column>
						<h:outputLabel value="Tipo Objetivo" />
					</p:column>
					<p:column>
						<h:selectOneMenu
							value="#{controladorMarcoLogico.objetivo.tipObjetivo}">
							<f:selectItem itemLabel="-- Seleccionar --" itemValue="0" />
							<f:selectItems value="#{controladorMarcoLogico.tiposObjetivo}"
								var="tipoObjetivo" itemLabel="#{tipoObjetivo.txtParametro}"
								itemValue="#{tipoObjetivo.codParametro}" />
							<p:ajax listener="#{controladorMarcoLogico.asignarPrecedente}"
								update="precedente" />
						</h:selectOneMenu>
					</p:column>
				</p:row>
				<p:row>
					<p:column>
						<h:outputLabel value="Supuesto" />
					</p:column>
					<p:column>
						<p:inputTextarea rows="4" cols="120"
							value="#{controladorMarcoLogico.objetivo.txtSupuesto}" />
					</p:column>
				</p:row>
				<p:row>
					<p:column>
						<h:outputLabel value="Precedente" />
					</p:column>
					<p:column>
						<p:inputText
							value="#{controladorMarcoLogico.parametro.txtParametroAbr}"
							id="precedente" disabled="true" />

					</p:column>
				</p:row>
				<p:row>
					<p:column>
						<h:outputLabel value="Activo" />
					</p:column>
					<p:column>
						<h:selectOneMenu
							value="#{controladorMarcoLogico.objetivo.flgActivo}">
							<f:selectItems value="#{controladorMarcoLogico.estadosObjetivo}"
								var="estadoObjetivo" itemLabel="#{estadoObjetivo.txtParametro}"
								itemValue="#{estadoObjetivo.codParametro}"></f:selectItems>
						</h:selectOneMenu>
					</p:column>
				</p:row>

			</p:panelGrid>
			<div align="center">
				<p:commandButton id="grabar"
					actionListener="#{controladorMarcoLogico.guardarObjetivo}"
					value="#{msg.grabar}" icon="ui-icon-close"
					oncomplete="PF('dlgobjetivo').hide();" update="@all" ajax="false"
					rendered="#{controladorPortafolio.habilitarBotonGrabar}" >
					<p:confirm header="Confirmacion"
					message="Esta Seguro de Realizar los cambios?" icon="ui-icon-alert" />
				</p:commandButton>	

				<p:commandButton id="actualizar"
					actionListener="#{controladorMarcoLogico.actualizarObjetivo}"
					value="#{msg.actualizar}" icon="ui-icon-close"
					oncomplete="PF('dlgobjetivo').hide();" update="@all"
					rendered="#{controladorPortafolio.habilitarBotonEditar}" >
					<p:confirm header="Confirmacion" message="Esta Seguro de Realizar los cambios?" 
					icon="ui-icon-alert" />
				</p:commandButton>	

				<p:commandButton id="buttonCancelarObjetivo"
					onclick="PF('dlgobjetivo').hide();" value="#{msg.cancelar}"
					icon="ui-icon-close" />


				<p:confirmDialog global="true" showEffect="fade"
					hideEffect="explode">
					<p:commandButton value="Si" type="button"
						styleClass="ui-confirmdialog-yes" icon="ui-icon-check" />
					<p:commandButton value="No" type="button"
						styleClass="ui-confirmdialog-no" icon="ui-icon-close" />
				</p:confirmDialog>

			</div>
		</h:form>
	</p:dialog>
</ui:composition>